package registry

import (
	"gcc/global"
)

// 每个服务进行注册的时候，需要告知注册中心的一些基本信息
// TODO: 更改字段， ServiceURL：[]string -> string
// TODO: 更改字段， add HeartServiceURL string and add ServiceUpdateURL string
// TODO: 思考一下， 如果多台服务器提供同一个服务，那么这个ServiceURL是不是要改成切片
type Registration struct{
	ServiceName global.ServiceName `json:"servicename"`// 服务名称是什么
	ServiceURL string		`json:"serviceurl"`// 服务的URL是什么(一个服务可能有多个地址，也就是多个服务器进行服务)
	RequireService []global.ServiceName	`json:"requireservice"`//你这个服务需要基于你什么服务
	HeartService string		`json:"heartservice"`// 发送心跳的地址应该是本服务的地址
	RequiredUpdateService string `json:"requiredupdateservice"`// 需要的服务变化的通知
}

type patchEntry struct{
	ServiceName  global.ServiceName
	ServiceURL  global.Address
}

type patch struct{
	Add, Removed []patchEntry
}

